Initialization and configuration of end point devices using a mobile device

ABSTRACT

Method and system for assigning addresses to end point devices in a network includes placing a mobile device in close proximity to a first end point device and establishing a wireless connection, transmitting an auto-addressing command from the mobile device to the end point device in response to the connection being established and disconnecting the connection in response to the end point device being configured with the network address. As the mobile device is moved through the system, when the wireless signal strength between the mobile device and a respective the end point device exceeds a threshold, both devices recognize that they are in close proximity and the mobile device transfers the address configuration information to the end point device. By moving the mobile device through the system the steps are automatically repeated until the mobile device assigns address and location information to each end point device on the network. The initialization process also involves assigning personality information to end devices that define particular behaviors that the end devices shall assume in the configured system.

FIELD OF DISCLOSURE

The present disclosure relates to configuration of end point devices ina network and more particularly to wireless initialization andconfiguration using a mobile device.

BACKGROUND

A network of end point devices having many nodes requires significanthuman effort or wiring to configure the individual addresses andlocation assignments of the nodes. This is applicable to many platformssuch as machines in a smart factory and on vehicles such as trains,aircraft, automobiles and ships. For example, in an aircraft, specialwiring is normally used for this purpose. These wires are only neededonce when the system is built but they remain on the aircraft for itslife. Other methods tend to require significant human effort to performthe address configuration.

Many systems are constructed as a network of end point devices that areconnected together through some form of wired or wireless communicationlinks. In this type of system, the end devices are installed at specificlocations and they need to be addressed such that a central controllercan communicate with individual items at known locations. One suchexample is an aircraft cabin management system. In the cabin managementsystem, a central controller interfaces with indicators and inputs atspecific row and seat locations. The controller needs to communicatewith the end point devices that are located at specific locations in thecabin. For example, when a passenger pushes the attendant call button inrow 31, seat A, the local controller must inform the central controllerat which location the button press occurred. For this functionality towork, each end point device needs a unique identification number and/oraddress such that the central controller can understand the locationfrom which messages originate or to send messages to a specificlocation. This capability applies to aircraft cabins and also many otherclasses of networked control systems.

The need therefore exists to configure a system when it is constructedor retrofit such that each end point device is assigned a unique addressand the central controller is configured to understand at which locationeach end point device is installed. There are several methods forachieving addressing of multiple units in networked controlarchitecture. One such method is to utilize dip switches to mechanicallyset an address on each device. Another method is to connect to eachdevice independently with a maintenance aid and manually assign anaddress through a serial communication port. Still another method is toutilize a token wire whereby each device on the network is connected viaa discrete signal to the next item in the line. With the token approacheach device can signal the next device down the line one at a time toconfigure the sequence of units.

All of these methods described above are undesirable since they eitherrequire a non-trivial amount of human effort, or they require extrawiring to connect all the devices in series. A method to auto addressall the items in the system is needed that does not require wires andcan allow error free addressing of the system with minimal human effort.During the configuration process each individual item is assigned anetwork address and the main controller is initialized to correlate thenetwork address to the location that the devices resides in thestructure. Another part of the configuration process is to initializeeach end device with particular personality and/or security settings.

A system may have several different types of end-devices that havedifferent personality needs. Examples of such items might be ceilinglights and sidewall lights, or a center versus side seating sections. Alight that is in the ceiling may react differently to scene commandsthan a side wall light. A center section overheard controller mayservice four seats while a side section controller may service threeseats. During the process of assigning address and location to enddevices each end device is also assigned with its individual personalityand security settings.

Typically, configuration initialization is achieved by using unique databuses for devices of different personality. There might be one daisychained wired data bus that connects the lights in the ceiling andanother database that connects the lights in the sidewall. After all thedevices are addressed, the main controller can then write specificconfiguration information (such as personality and security settings) toeach individual device. The port that these devices are connected towould usually be one key way to control or configure differentpersonality or security settings.

In a wirelessly controlled system, all the devices communicate over thesame wireless network and there are not specific physical ports fordifferent types of end devices.

SUMMARY

In one embodiment, a computer implemented method for assigning addressesand configuring a plurality of end point devices in a network isdisclosed. The method starts with placing a mobile wireless device inclose proximity to a first end point device of a plurality of end pointdevices and establishing a first wireless connection between the firstend point device and the mobile wireless device. The mobile device thenperforms transmitting a first auto-addressing command from the mobilewireless device to the first end point device in response to the firstwireless connection being established, the first auto-addressing commandincluding information to configure the first end point device with afirst network address and disconnecting the first wireless connection inresponse to receiving indicating that the first end point device isconfigured with the first network address. In addition to configuringthe address of the device, other types of configuration information maybe transmitted from the mobile device to the end device includingsecurity keys and personality traits. The above steps are repeated untileach of the plurality of end point devices is configured with a networkaddress and other parameters. Therefore, the initialization andconfiguration approach defined in this disclosure will installconfiguration settings to each end device at the same time that it isassigning address and location.

The wireless device works on the premise that an operator will utilize adisplay on the device to initiate the configuration process. The displaywill allow the operator to select the type of end-device that will beinitialized, and will allow the operator to begin and end the initializeprocess. The process also requires that the operator start the processat the first item and progress sequentially toward the last item. Whilemoving from first to last, the operator must place the mobile deviceclose to each end device and wait for a visual or aural indication thateach individual device has been recognized and initialized. The mobiledevice keeps track of the number of end devices it has initialized suchthat each subsequent device is initialized with the next address andlocation.

One example embodiment of the present disclosure uses a wireless signalstrength such as RSSI between the mobile device and the plurality of endpoint devices to perform the address configuration. As the mobile deviceis moved through the system by an operator, the mobile device assignsaddress and location information to each end point device. When thesignal strength exceeds a threshold, both devices recognize that theyare in close proximity and the mobile device transfers the address andother configuration information to the node. There are several pieces ofinformation that may be transferred, such as, node address, location,type and security keys. The approach eliminates token wiring andrequires minimal manual effort.

The disclosed method eliminates token wiring and achieves the goal ofaddressing all of the end point devices in the network with minimalmanual effort. It also provides a method to distribute security keys ina secure manner The security keys are stored in a small device such as aSIM card that may be physically secured to prevent unauthorized access.

The mobile device in one example includes a user interface to allow theoperator to control the system. In another example manual interface suchas buttons are used.

BRIEF DESCRIPTION OF THE DRAWINGS

Features and advantages of embodiments of the claimed subject matterwill become apparent as the following Detailed Description proceeds, andupon reference to the Drawings, wherein like numerals depict like parts,and in which:

FIG. 1 is perspective view of a wireless system of configuring networknodes, in accordance with certain of the embodiments disclosed herein.

FIG. 2 is a flow diagram of one embodiment of a method of configuringnetwork addresses of wireless end point devices using a mobile wirelessdevice, in accordance with certain of the embodiments disclosed herein.

FIG. 3 illustrates a public and private key schema, in accordance withcertain of the embodiments disclosed herein.

FIG. 4 illustrates another public and private key schema, in accordancewith certain of the embodiments disclosed herein.

FIG. 5 is a block diagram of an exemplary computing system suitable forimplementation of the embodiments of the invention disclosed in thisspecification.

Although the following Detailed Description will proceed with referencebeing made to illustrative embodiments, many alternatives,modifications, and variations thereof will be apparent to those skilledin the art.

DETAILED DESCRIPTION

This disclosure provides techniques for assigning addresses to andconfiguring a plurality of end point devices or nodes on a network. Inone embodiment, a method to quickly assign addresses to end pointdevices in a wireless control system is disclosed. In one embodiment,the method utilizes a mobile device, including a handheld or mobilewireless device that will wirelessly assign an address to each end pointdevice on the network. In addition to configuring the address of thedevice, other types of configuration information may be transmitted fromthe mobile device to the end device including security keys andpersonality traits. In one embodiment, the method operates on theprincipal of a wireless signal strength value, such as Receiver SignalStrength Indication (RSSI). The RSSI is a measurement that a wirelessdevice can make when it receives a signal from another wireless devicethat indicates the strength of the wireless signal. The RSSI level is amaximum when two wireless transceivers are in close proximity and theRSSI level diminishes rapidly as the separate distance increases. Whentwo wireless transceivers move apart the RSSI signal diminishes rapidly.Once the separation distance reaches a specific value, for example 4feet, the change in RSSI becomes more gradual. RSSI can therefore beused to accurately detect when two wireless devices are in closeproximity. In one embodiment, a threshold is set that will indicate whentwo devices are within a certain distance, for example, 2 feet from eachother.

In one embodiment, the system is designed such that each end pointdevice can detect when a mobile wireless device is placed in closeproximity The mobile wireless device will be configured such that whenan auto-addressing mode is initiated, the mobile wireless device willsend a beacon signal that end point devices will recognize as anauto-addressing command The auto-addressing command will include alocation number that the end point device will store into memory. Theend point devices will listen for the auto-addressing command and willinterrogate the signal strength of this message. When the mobilewireless device is placed in close proximity to the end point device,the mobile wireless device will be recognized by the end point based onthe RSSI, which causes the end point to configure its address by settingits address to the address transmitted from the mobile wireless device.The end point will then send a response to the mobile wireless device toindicate that it has recognized and initialized its local address. Uponreceiving this acknowledgement, the mobile wireless device willincrement the address count and then start transmitting the new addresscount.

In another embodiment, the end point devices can send a wireless signalfor the mobile wireless device to detect when it is in close proximitywith an end point device. When the mobile wireless device detects thatit is in close proximity with an end point device, it can send theappropriate commands to the end point device to assign an address and alocation on the network.

Referring to FIG. 1, according to one embodiment, a system 10 includesan operator or moveable unit 12 with wireless mobile device 14 eitherheld by the operator or attached to the moveable unit. A plurality ofend point devices or nodes 16 are wirelessly connected to a maincontroller 18 forming a wireless network 20. Power is provided to thedevices on the network 20 by power cable 22. In one embodiment, theoperator or moveable unit 12 will initiate a configuration mode, such asan auto-addressing setup mode by pushing a button or otherwiseindicating a start condition on the wireless mobile device 14. Theoperator or moveable unit 12 will then place the wireless mobile device14 in close proximity to one of the end point devices 16. According toone embodiment, a drone, robot, or other moveable platform is used toinitiate the processing of the network end point devices 16 whereby thestart condition can be automated such as by a measured distance from theend point device 16 to the wireless mobile device 14, the RSSI strengthor other communications with the end point device 16.

The method and system of this disclosure may be applied to differenttypes of wireless networks including Bluetooth, Bluetooth Low Energy(BLE), WiFi, Zigbee, Near Field Communication (NFC), and others.

When the initialization and configuration procedure is started, eachwireless end point device 16 will be emitting a configuration message.In one example, the configuration message is emitted at approximately2-10 times a second and in a further example is 5 times a second. Aspart of the BLE packet or other wireless packet, this message willinclude certain information such as an identifier of the end pointdevice 16 configured to authenticate itself as a member of the network,as well as giving the mobile wireless device an estimated RSSI. Theidentifier in one example is used to filter out wireless devices notintended to be a part of the network 20. As the operator or moveableunit 12 moves within the proximity of each of the end point devices 16,the wireless mobile device 14 will intercept the broadcast from the endpoint device 16 emitting a message within the proximity threshold.Utilizing the packet's identifier, mobile wireless device 14 willregister the correct end point devices 16 as controllers14 on thenetwork 20 and begin the address configuration process, ignoring any endpoint devices that do not match the accepted identifier.

Once an end point device 16 is registered with the mobile wirelessdevice 14, the mobile wireless device 14 stores collected RSSIinternally. In one example the collected RSSI data is averaged over acount of the message receptions. As long as a controller 16 hasn't beenassigned a spot in the line, it will continuously send out the RSSIsignals. While the operator or moveable unit 12 moves closer to thefirst controller 16, the average signal strength will increase to athreshold signifying the separation is within a threshold distance, forexample, 2 feet or less. Once this threshold is met, the authenticationis indicated. In one example the authentication is a light on both theend point device controller 16 and the mobile wireless device 14 thatwill illuminate signifying a connection has been made. Other examples ofconnectivity indication include audio, vibration or visual indicators.

When the connection is made, the mobile wireless device 14 gives the endpoint device controller 16 its place in line in the network 20 and thendisconnects. The end point device controller 16 in one exampleilluminates a specific color pertaining to its place in line and ceasesto broadcast configuration messages. In one embodiment, the end pointdevice controller 16 starts to look for a message from the maincontroller 18. The wireless mobile device 14 in one embodiment will thenincrement the address counter from 1 to 2.

The operator or moveable unit 12 will then proceed along the network 20of end point devices 16 as depicted by arrow 24 to place the wirelessmobile device 14 in close proximity to each end point device 16. Theorder in one example is sequential. This process continues down the lineuntil all the end point devices 16 have been configured with an addressin the network 20. In one embodiment, after the last end point device i6is configured, the operator would press a button on the wireless mobiledevice to stop the auto-addressing function. Once all the end pointdevice controllers 16 are configured, they will receive a probe from themain controller 18 of the network 20 to register their credentialswithin a configuration table. The table contains the type, positionaldata, address in the network, and any relevant information pertaining tothe identification and functionality of each end point device 16.

In addition to configuring the address of the device, other types ofconfiguration information may be transmitted from the mobile device tothe end device including security keys and personality traits. Examplesof such items might be ceiling lights and sidewall lights, or a centerversus side seating sections. A light that is in the ceiling may reactdifferently to scene commands than a side wall light. A center sectionoverheard controller may service four seats while a side sectioncontroller may service three seats. During the process of assigningaddress and location to end devices each end device is also assignedwith its individual personality and security settings.

The above steps are repeated until each of the plurality of end pointdevices is configured with a network address and other parameters.Therefore, the initialization and configuration approach defined in thisdisclosure will install configuration settings to each end device at thesame time that it is assigning address and location.

In one embodiment of an aircraft example, the process of addressing alarge number of end point devices distributed in a column down thelength of an aircraft could be performed very quickly, limited only bythe speed at which the operator can walk down the fuselage. Also thisapproach is error free since the mobile wireless device 14 and end pointdevice wireless controllers 16 will automatically assign addressesduring the process. The operator only needs to initiate the process andthen terminate the process at the end.

Turning now to FIG. 2, there is shown a flow diagram of one embodimentof a computer implemented method for assigning addresses to a pluralityof end point devices in a network. In accordance with the method, stepS100 is placing a mobile wireless device in close proximity to a firstend point device of N end point devices, N being a number greaterthan 1. Step S102 is establishing a first wireless connection betweenthe first end point device and the mobile wireless device. Step S104 istransmitting a first auto-addressing command from the mobile wirelessdevice to the first end point device in response to the first wirelessconnection being established, the first auto-addressing commandincluding information to configure the first end point device with afirst network address. Step S106 is disconnecting the first wirelessconnection in response to receiving indicating that the first end pointdevice is configured with the first network address. Step S108 isrepeating steps S100-S106 until each of the remaining N−1 end pointdevices is configured with a network address.

In one embodiment of the computer implemented method of FIG. 2, each ofthe N end point devices is assigned a sequential address in the networkaccording to a sequential order of the wireless connections between themobile wireless device and each of the N end point devices. In anotherembodiment of the computer implemented method of FIG. 2, the sequentialaddress in the network of each of the N end point devices includesinformation identifying a position of each of the N end point deviceswith respect to each other in the network. In one embodiment of thecomputer implemented method of FIG. 2, the mobile wireless deviceincrements an address counter after each of the N end point devices isassigned a sequential address in the network.

In another embodiment of the computer implemented method of FIG. 2, stepS104 of transmitting each of the auto-addressing commands includesmonitoring a wireless signal strength between the wireless mobile deviceand each respective end point device and transmitting each of theauto-addressing commands in response to the wireless signal strengthbeing greater than a threshold. In one embodiment of the computerimplemented method of FIG. 2, the monitoring a wireless signal strengthbetween the wireless mobile device and each respective end point deviceincludes monitoring an RSSI level, determine an average RSSI level overtime and transmitting each of the auto-addressing commands in responseto the average RSSI level being greater than the threshold.

In another embodiment of the computer implemented method of FIG. 2, eachof the wireless connections is established based on a wireless signaltransmitted between the wireless mobile device and each respective endpoint device having an identifier unique to each respective end pointdevice.

In one embodiment, the system 10 device will also provide features toenable security on the network 20. In one embodiment, the wirelessmobile device 14 and the end point devices 16 store encryption keys. Inone embodiment, the encryption keys will be stored in fusable,non-changeable, and non-readable memory of each device at the time ofmanufacture. During the address configuration procedure, the wirelessmobile device 14 and the end point devices 16 on the network 20 willverify their identities and authenticate themselves as an approveddevice. In another embodiment, custom encryption keys will be generatedand distributed to the end point devices that are unique to a specificaircraft.

Referring to FIG. 3, in one embodiment, each of the devices manufacturedfor the wireless control network 20 will have keys installed at time ofmanufacture or during a subsequent key install process. In oneembodiment, a public/private key pair will be employed, in which themobile wireless device 14 will contain the private key 30, while the endpoint devices 16 and the main controller 18, embedded in the vehiclesuch as an aircraft, will contain public keys 32. The private key 30 inthe mobile wireless device 14 will be used to un-lock all end pointdevices 16 that are to be attached to a vehicle.

Each time the main system controller 18 or a wireless end pointcontroller 16 communicates with the wireless mobile device 14, thedevices shall authenticate each other through the use of key exchanges.The wireless end point controllers 16 will generate a message using itslocal public key and send it to the mobile wireless device 14. Only themobile wireless device 14 will be able to decrypt the message using itsprivate key 30. Once the message is decrypted the mobile wireless device14 will be able to verify the identity of the end point controller 16 asan approved end point device. The mobile wireless device 14 will alsoreply to the wireless end point controller 16 with an encrypted messagesuch that the wireless end point controller 16 can authenticate with themobile wireless device 14.

Referring to FIG. 4, in another embodiment, the mobile wireless device14 will also initialize unique encryption keys for each vehicle. Thismay be in addition to the public/private key pair 30/32. Prior toconfiguration of the end point devices 16, the mobile wireless device 14will coordinate with the main controller 18 to establish the per-vehicleunique encryption key. This key shall be a symmetric key 34 to enablefast processing of system control messages.

Prior to configuring the end point devices 16, the mobile wirelessdevice 14 will communicate with the main system controller 18. Duringthis communication, the main system controller 18 will generate a randomsymmetric key 34 and fuse it into its secure memory. The main systemcontroller 18 will also encrypt the symmetric key 34 and securelytransfer it to the mobile wireless device 14. The mobile wireless device14 will store the key temporarily to be used only during theconfiguration process of the specific vehicle.

As each end point device is configured for position in the network, themobile wireless device 14 can also provide to each end point device 16the symmetric encryption key 34 that will be utilized for securecommunications on the network 20. The encryption keys 34 will providethe system on each vehicle with unique secure communication credentialsand prevent networks on two different systems from accidentallycommunicating with each other. The wireless end point controllers 16will fuse the encryption keys 34 into their secure data storageregisters.

The mobile wireless device 14 thereby provides a physical secure key tomanage security of the wireless network 20. The vehicle such as anaircraft OEM, airline, and equipment manufacturer can physically securethe mobile wireless device 14 and utilize it to provide for secureupdates to the system. This prevents the need to remember and managepasswords, and thereby prevent unauthorized disclose of passwords.

Once such a system is fielded, it may be necessary to replace individualend point devices 16 that have failed or for other maintenance reasons.It would be undesirable to have to require the mobile wireless device 14to configure the replaced device in such situations since the vehicle orplatform may be at a remote location. In one embodiment, the system 10is designed with a special maintenance mode. In the special maintenancemode, a single end point device 16 in the network 20 can be replacedwithout the use of mobile wireless device 14. The replacement processmay be controlled from the main controller 18, which may include a mainuser interface of the system 10. The main user interface of maincontroller 18 is used to specify which end point device 16 is beingreplaced and command the system into configuration mode.

In this configuration maintenance mode, the two end point devices 16closest to the new replacement end point device will enter a listeningmode, and will listen for the replacement end point device to getpowered up. Once the new end point device is installed and powered up,the two end point devices 16 in its closest proximity will act as themobile wireless device, and enable the new end device to join thenetwork in the same way that the wireless mobile device would act.

In various embodiments, system 10 may be implemented as a wirelesssystem that may include components and interfaces suitable forcommunicating over a wireless shared media, such as one or moreantennae, transmitters, receivers, transceivers, amplifiers, filters,control logic, and so forth. An example of wireless shared media mayinclude portions of a wireless spectrum, such as the radio frequencyspectrum and so forth.

FIG. 5 illustrates a schematic of an example computer or processingsystem that may implement the method for network address configurationin one embodiment of the present disclosure. The computer system is onlyone example of a suitable processing system that may be used toimplement the mobile wireless device 14, end point devices 16 and maincontroller 18 and is not intended to suggest any limitation as to thescope of use or functionality of embodiments of the methodologydescribed herein. The processing system shown may be operational withnumerous other general purpose or special purpose computing systemenvironments or configurations. Examples of well-known computingsystems, environments, and/or configurations that may be suitable foruse with the processing system shown in FIG. 5 may include, but are notlimited to, personal computer systems, server computer systems, thinclients, thick clients, handheld or laptop devices, multiprocessorsystems, microprocessor-based systems, set top boxes, programmableconsumer electronics, network PCs, minicomputer systems, mainframecomputer systems, and distributed cloud computing environments thatinclude any of the above systems or devices, and the like.

The components of computer system may include, but are not limited to,one or more processors or processing units 100, a system memory 106, anda bus 104 that couples various system components including system memory106 to processor 100. The processor 100 may include a program module 102that performs the methods described herein. The module 102 may beprogrammed into the integrated circuits of the processor 100, or loadedfrom memory 106, storage device 108, or network 114 or combinationsthereof.

Bus 104 may represent one or more of any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, an accelerated graphics port, and a processor or local bus usingany of a variety of bus architectures. By way of example, and notlimitation, such architectures include Industry Standard Architecture(ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA)bus, Video Electronics Standards Association (VESA) local bus, andPeripheral Component Interconnects (PCI) bus.

The computer system may include a variety of computer system readablemedia. Such media may be any available media that is accessible bycomputer system, and it may include both volatile and non-volatilemedia, removable and non-removable media.

System memory 106 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) and/or cachememory or others. Computer system may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 108 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(e.g., a “hard drive”). Although not shown, a magnetic disk drive forreading from and writing to a removable, non-volatile magnetic disk(e.g., a “floppy disk”), and an optical disk drive for reading from orwriting to a removable, non-volatile optical disk such as a CD-ROM,DVD-ROM or other optical media can be provided. In such instances, eachcan be connected to bus 104 by one or more data media interfaces.

The computer system may also communicate with one or more externaldevices 116 such as a keyboard, a pointing device, a display 118, etc.;one or more devices that enable a user to interact with computer system;and/or any devices (e.g., network card, modem, etc.) that enablecomputer system to communicate with one or more other computing devices.Such communication can occur via Input/Output (I/O) interfaces 110.

Still yet, the computer system can communicate with one or more networks114 such as a local area network (LAN), a general wide area network(WAN), and/or a public network (e.g., the Internet) via network adapter112. As depicted, network adapter 112 communicates with the othercomponents of computer system via bus 104. It should be understood thatalthough not shown, other hardware and/or software components could beused in conjunction with computer system. Examples include, but are notlimited to: microcode, device drivers, redundant processing units,external disk drive arrays, RAID systems, tape drives, and data archivalstorage systems, etc.

Various embodiments may be implemented using hardware elements, softwareelements, or a combination of both. Examples of hardware elements mayinclude processors, microprocessors, circuits, circuit elements (forexample, transistors, resistors, capacitors, inductors, and so forth),integrated circuits, ASICs, programmable logic devices, digital signalprocessors, FPGAs, logic gates, registers, semiconductor devices, chips,microchips, chipsets, and so forth. Examples of software may includesoftware components, programs, applications, computer programs,application programs, system programs, machine programs, operatingsystem software, middleware, firmware, software modules, routines,subroutines, functions, methods, procedures, software interfaces,application program interfaces, instruction sets, computing code,computer code, code segments, computer code segments, words, values,symbols, or any combination thereof. Determining whether an embodimentis implemented using hardware elements and/or software elements may varyin accordance with any number of factors, such as desired computationalrate, power level, heat tolerances, processing cycle budget, input datarates, output data rates, memory resources, data bus speeds, and otherdesign or performance constraints.

In one embodiment, the method and system disclosed herein is configuredfor the initialization of end devices in an aircraft cabin managementsystem. In the cabin management system, a central controller interfaceswith indicators and buttons at specific seat locations, color controlledLED lights at different locations (ceiling, sidewall, lavatory),speakers, electronically controlled stow bins, electronically dimmablewindows and other devices. All of these devices may be wireles slycontrolled.

The end devices need to be initialized with specific settings. Thecontroller needs to communicate with the end-point devices that arelocated at specific locations in the cabin and therefore each end deviceneeds a unique address. The controller also needs to broadcast messagesto specific types of units and therefore each unit needs to have aunique personality. The end devices need security keys to authenticateon a specific aircraft's network.

The technicians building the aircraft select generic items and installthem in specific locations. Devices ship from the factory in a genericstate and are installed for use on a specific end customer (airlines)aircraft. During the installation and setup of an aircraft on themanufacturing line, the method and system disclosed herein utilizes ahandheld device and the proximity based approach. The handheld deviceallows the operator to easily select the type of device to beinitialized, the personality, and the security key. The operator theninitiates the configuration process on the tablet by touching theappropriate control. The operator than walks down the cabin from frontto back and places the handheld near each device in order. The handhelddevice monitors its wireless interface looking for an appropriate typeof device to come in-range. When it finds such a device it makes aconnection to the device and transfers to the device the appropriateinitialization parameters. The wireless device keeps track of the numberof devices that have been initialized and thereby initializes each enddevice that it encounters with the next location address. Afterinitializing and disconnecting from a device it provides the operatorwith feedback indicating that the initialization is complete. Theoperator then moves to the next device in the line and repeats theprocess all the way to the rear of the aircraft. Once all the devices inthe line have been initialized, the operator can command the wirelessdevice that the initialization process is complete.

Once all the devices in the aircraft have been initialized they cancommunicate back to the main controller to inform the main controller oftheir specific details. Another approach would be to allow the wirelessdevice to automatically transfer the results of the initializationprocess to the main controller.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. These terms are not intendedas synonyms for each other. For example, some embodiments may bedescribed using the terms “connected” and/or “coupled” to indicate thattwo or more elements are in direct physical or electrical contact witheach other. The term “coupled,” however, may also mean that two or moreelements are not in direct contact with each other, but yet stillcooperate or interact with each other.

The various embodiments disclosed herein can be implemented in variousforms of hardware, software, firmware, and/or special purposeprocessors. For example, in one embodiment at least one non-transitorycomputer readable storage medium has instructions encoded thereon that,when executed by one or more processors, cause one or more of thenetwork address configuration methodologies disclosed herein to beimplemented. The instructions can be encoded using a suitableprogramming language, such as C, C++, object oriented C, Java,JavaScript, Visual Basic .NET, Beginner's All-Purpose SymbolicInstruction Code (BASIC), or alternatively, using custom or proprietaryinstruction sets. The instructions can be provided in the form of one ormore computer software applications and/or applets that are tangiblyembodied on a memory device, and that can be executed by a computerhaving any suitable architecture. In one embodiment, the system can behosted on a given website and implemented, for example, using JavaScriptor another suitable browser-based technology. For instance, in certainembodiments, the system may leverage processing resources provided by aremote computer system accessible via network. The computer softwareapplications disclosed herein may include any number of differentmodules, sub-modules, or other components of distinct functionality, andcan provide information to, or receive information from, still othercomponents. These modules can be used, for example, to communicate withinput and/or output devices such as a display screen, a touch sensitivesurface, a printer, and/or any other suitable device. Other componentsand functionality not reflected in the illustrations will be apparent inlight of this disclosure, and it will be appreciated that otherembodiments are not limited to any particular hardware or softwareconfiguration. Thus in other embodiments system may comprise additional,fewer, or alternative subcomponents as compared to those included in theexample embodiments.

The aforementioned non-transitory computer readable medium may be anysuitable medium for storing digital information, such as a hard drive, aserver, a flash memory, and/or random access memory (RAM), or acombination of memories. In alternative embodiments, the componentsand/or modules disclosed herein can be implemented with hardware,including gate level logic such as a field-programmable gate array(FPGA), or alternatively, a purpose-built semiconductor such as anapplication-specific integrated circuit (ASIC). Still other embodimentsmay be implemented with a microcontroller having a number ofinput/output ports for receiving and outputting data, and a number ofembedded routines for carrying out the various functionalities disclosedherein. It will be apparent that any suitable combination of hardware,software, and firmware can be used, and that other embodiments are notlimited to any particular system architecture.

Some embodiments may be implemented, for example, using a machinereadable medium or article which may store an instruction or a set ofinstructions that, if executed by a machine, may cause the machine toperform a method and/or operations in accordance with the embodimentsdisclosed herein. Such a machine may include, for example, any suitableprocessing platform, computing platform, computing device, processingdevice, computing system, processing system, computer, process, or thelike, and may be implemented using any suitable combination of hardwareand/or software. The machine readable medium or article may include, forexample, any suitable type of memory unit, memory device, memoryarticle, memory medium, storage device, storage article, storage medium,and/or storage unit, such as memory, removable or non-removable media,erasable or non-erasable media, writeable or rewriteable media, digitalor analog media, hard disk, floppy disk, compact disk read only memory(CD-ROM), compact disk recordable (CD-R) memory, compact diskrewriteable (CR-RW) memory, optical disk, magnetic media,magneto-optical media, removable memory cards or disks, various types ofdigital versatile disk (DVD), a tape, a cassette, or the like. Theinstructions may include any suitable type of code, such as source code,compiled code, interpreted code, executable code, static code, dynamiccode, encrypted code, and the like, implemented using any suitable highlevel, low level, object oriented, visual, compiled, and/or interpretedprogramming language.

Unless specifically stated otherwise, it may be appreciated that termssuch as “processing,” “computing,” “calculating,” “determining,” or thelike refer to the action and/or process of a computer or computingsystem, or similar electronic computing device, that manipulates and/ortransforms data represented as physical quantities (for example,electronic) within the registers and/or memory units of the computersystem into other data similarly represented as physical quantitieswithin the registers, memory units, or other such information storagetransmission or displays of the computer system. The embodiments are notlimited in this context.

The terms “circuit” or “circuitry,” as used in any embodiment herein,are functional and may comprise, for example, singly or in anycombination, hardwired circuitry, programmable circuitry such ascomputer processors comprising one or more individual instructionprocessing cores, state machine circuitry, and/or firmware that storesinstructions executed by programmable circuitry. The circuitry mayinclude a processor and/or controller configured to execute one or moreinstructions to perform one or more operations described herein. Theinstructions may be embodied as, for example, an application, software,firmware, etc. configured to cause the circuitry to perform any of theaforementioned operations. Software may be embodied as a softwarepackage, code, instructions, instruction sets and/or data recorded on acomputer-readable storage device. Software may be embodied orimplemented to include any number of processes, and processes, in turn,may be embodied or implemented to include any number of threads, etc.,in a hierarchical fashion. Firmware may be embodied as code,instructions or instruction sets and/or data that are hard-coded (e.g.,nonvolatile) in memory devices. The circuitry may, collectively orindividually, be embodied as circuitry that forms part of a largersystem, for example, an integrated circuit (IC), an application-specificintegrated circuit (ASIC), a system on-chip (SoC), desktop computers,laptop computers, tablet computers, servers, smart phones, etc. Otherembodiments may be implemented as software executed by a programmablecontrol device. In such cases, the terms “circuit” or “circuitry” areintended to include a combination of software and hardware such as aprogrammable control device or a processor capable of executing thesoftware. As described herein, various embodiments may be implementedusing hardware elements, software elements, or any combination thereof.Examples of hardware elements may include processors, microprocessors,circuits, circuit elements (e.g., transistors, resistors, capacitors,inductors, and so forth), integrated circuits, application specificintegrated circuits (ASIC), programmable logic devices (PLD), digitalsignal processors (DSP), field programmable gate array (FPGA), logicgates, registers, semiconductor device, chips, microchips, chip sets,and so forth.

Numerous specific details have been set forth herein to provide athorough understanding of the embodiments. It will be understood by anordinarily-skilled artisan, however, that the embodiments may bepracticed without these specific details. In other instances, well knownoperations, components and circuits have not been described in detail soas not to obscure the embodiments. It can be appreciated that thespecific structural and functional details disclosed herein may berepresentative and do not necessarily limit the scope of theembodiments. In addition, although the subject matter has been describedin language specific to structural features and/or methodological acts,it is to be understood that the subject matter defined in the appendedclaims is not necessarily limited to the specific features or actsdescribed herein. Rather, the specific features and acts describedherein are disclosed as example forms of implementing the claims.

The terms and expressions which have been employed herein are used asterms of description and not of limitation, and there is no intention,in the use of such terms and expressions, of excluding any equivalentsof the features shown and described (or portions thereof), and it isrecognized that various modifications are possible within the scope ofthe claims. Accordingly, the claims are intended to cover all suchequivalents. Various features, aspects, and embodiments have beendescribed herein. The features, aspects, and embodiments are susceptibleto combination with one another as well as to variation andmodification, as will be understood by those having skill in the art.The present disclosure should, therefore, be considered to encompasssuch combinations, variations, and modifications. It is intended thatthe scope of the present disclosure not be limited by this detaileddescription, but rather by the claims appended hereto. Future filedapplications claiming priority to this application may claim thedisclosed subject matter in a different manner, and may generallyinclude any set of one or more elements as variously disclosed orotherwise demonstrated herein.

What is claimed is:
 1. A computer implemented method for assigningconfiguration parameters to a plurality of end point devices in anetwork, comprising: (a) placing a mobile wireless device in closeproximity to a first end point device of N end point devices, N being anumber greater than 1; (b) establishing a first wireless connectionbetween the first end point device and the mobile wireless device; (c)transmitting a first auto-addressing command from the mobile wirelessdevice to the first end point device in response to the first wirelessconnection being established, the first auto-addressing commandincluding information to configure the first end point device with afirst network address; (d) transmitting other initialization informationfrom the mobile device to the first end device; (e) disconnecting thefirst wireless connection in response to receiving indicating that thefirst end point device is configured with the first network address; and(g) repeating steps (a)-(d) until each of the remaining N−1 end pointdevices is configured with a network address.
 2. The computerimplemented method of claim 1, wherein each of the N end point devicesis automatically assigned a sequential address in the network accordingto a sequential order of the wireless connections between the mobilewireless device and each of the N end point devices as the mobilewireless device is moved along the network.
 3. The computer implementedmethod of claim 2, wherein the sequential address in the network of eachof the N end point devices includes information identifying a positionof each of the N end point devices with respect to each other in thenetwork.
 4. The computer implemented method of claim 2, wherein themobile wireless device increments an address counter after each of the Nend point devices is assigned a sequential address in the network. 5.The computer implemented method of claim 1, wherein transmitting each ofthe auto-addressing commands includes monitoring a wireless signalstrength between the wireless mobile device and each respective endpoint device and transmitting each of the auto-addressing commands inresponse to the wireless signal strength being greater than a threshold.6. The computer implemented method of claim 5, wherein monitoring awireless signal strength between the wireless mobile device and eachrespective end point device includes monitoring an RSSI level, determinean average RSSI level over time and transmitting each of theauto-addressing commands in response to the average RSSI level beinggreater than the threshold.
 7. The computer implemented method of claim1, wherein each of the wireless connections is established based on awireless signal transmitted between the wireless mobile device and eachrespective end point device having an identifier unique to eachrespective end point device.
 8. The computer implemented method of claim1, further comprising establishing a public/private key encryptionprotocol in the wireless signal communication between the wirelessmobile device and each respective end point device.
 9. The computerimplemented method of claim 8, further comprising establishing anencryption key unique to a set of the N end point devices located in asingle vehicle.
 10. The computer implemented method of claim 1, furthercomprising replacing one of the N end point devices with a new end pointdevice, and wherein at least one of the N end point devices in closestproximity to the new end point device performing steps (b)-(e) to enablethe new end point device to join the network.
 11. The computerimplemented method of claim 2, further comprising selectingconfiguration information for the end point devices to assignpersonality traits for the end devices.
 12. A system for assigningaddresses to a plurality of end point devices in a network, comprising:a wireless mobile device; N end point devices, N being a number greaterthan 1; and a main controller; the wireless mobile device comprising oneor more computer processors, one or more non-transitorycomputer-readable storage media and program instructions, stored on theone or more non-transitory computer-readable storage media, which whenimplemented by the one or more processors, cause the wireless mobiledevice to perform the steps of: (a) establishing a first wirelessconnection between a first end point device of the N end point devicesand the mobile wireless device in response to the mobile wireless devicebeing in close proximity to the first end point device; (b) transmittinga first auto-addressing command from the mobile wireless device to thefirst end point device in response to the first wireless connectionbeing established, the first auto-addressing command includinginformation to configure the first end point device with a first networkaddress; (c) disconnecting the first wireless connection in response toreceiving indicating that the first end point device is configured withthe first network address; and (d) repeating steps (a)-(e) until each ofthe remaining N−1 end point devices is configured with a networkaddress; the N end point devices storing the respective network address;and the main controller being configured to establish communication witheach of the N end point devices and to register the addresses of each ofthe N end point devices in a network configuration table in response toreceiving a signal that all of the N end point devices have beenconfigured with a network address.
 13. The system of claim 12, whereineach of the N end point devices is automatically assigned a sequentialaddress in the network according to a sequential order of the wirelessconnections between the mobile wireless device and each of the N endpoint devices as the mobile wireless device is moved along the network.14. The system of claim 13, wherein the sequential address in thenetwork of each of the N end point devices includes informationidentifying a position of each of the N end point devices with respectto each other in the network.
 15. The system of claim 13, wherein themobile wireless device increments an address counter after each of the Nend point devices is assigned a sequential address in the network. 16.The system of claim 12, wherein transmitting each of the auto-addressingcommands includes monitoring a wireless signal strength between thewireless mobile device and each respective end point device andtransmitting each of the auto-addressing commands in response to thewireless signal strength being greater than a threshold.
 17. The systemof claim 16, wherein monitoring a wireless signal strength between thewireless mobile device and each respective end point device includesmonitoring an RSSI level, determine an average RSSI level over time andtransmitting each of the auto-addressing commands in response to theaverage RSSI level being greater than the threshold.
 18. The system ofclaim 12, wherein each of the wireless connections is established basedon a wireless signal transmitted between the wireless mobile device andeach respective end point device having an identifier unique to eachrespective end point device.
 19. The system of claim 12, furthercomprising establishing a public/private key encryption protocol in thewireless signal communication between the wireless mobile device andeach respective end point device.
 20. The system of claim 19, furthercomprising establishing an encryption key unique to a set of the N endpoint devices located in a single vehicle.
 21. The system of claim 12,further comprising replacing one of the N end point devices with a newend point device, and wherein at least one of the N end point devices inclosest proximity to the new end point device performing steps (a) -(c)to enable the new end point device to join the network.
 22. The systemof claim 12, wherein the mobile wireless device is configured to send abeacon signal for establishing the wireless connection between thewireless mobile device and each respective end point device.
 23. Thesystem of claim 12, wherein each N end point device is configured tosend a beacon signal for establishing the wireless connection betweenthe wireless mobile device and each respective end point device.
 24. Thecomputer system of claim 12, wherein the mobile wireless device enablesa user to select configuration information for the end point devicessuch that personality traits for the end devices can be assigned.
 25. Acomputer program product comprising: program instructions on acomputer-readable storage medium, where execution of the programinstructions using a computer causes a mobile wireless device to performa method for assigning addresses to N end point devices in a network, Nbeing a number greater than 1, comprising: (a) establishing a firstwireless connection between a first end point device of the N end pointdevices and the mobile wireless device in response to the mobilewireless device being in close proximity to the first end point device;(b) transmitting a first auto-addressing command from the mobilewireless device to the first end point device in response to the firstwireless connection being established, the first auto-addressing commandincluding information to configure the first end point device with afirst network address; (c) disconnecting the first wireless connectionin response to receiving indicating that the first end point device isconfigured with the first network address; and (g) repeating steps(a)-(c) until each of the remaining N−1 end point devices is configuredwith a network address.
 26. The computer program product of claim 25,wherein each of the N end point devices is automatically assigned asequential address in the network according to a sequential order of thewireless connections between the mobile wireless device and each of theN end point devices as the mobile wireless device is moved along thenetwork.
 27. The computer program product of claim 25, wherein thesequential address in the network of each of the N end point devicesincludes information identifying a position of each of the N end pointdevices with respect to each other in the network.
 28. The computerprogram product of claim 25, wherein the mobile wireless deviceincrements an address counter after each of the N end point devices isassigned a sequential address in the network.
 29. The computer programproduct of claim 25, wherein transmitting each of the auto-addressingcommands includes monitoring a wireless signal strength between thewireless mobile device and each respective end point device andtransmitting each of the auto-addressing commands in response to thewireless signal strength being greater than a threshold.
 30. Thecomputer program product of claim 29, wherein monitoring a wirelesssignal strength between the wireless mobile device and each respectiveend point device includes monitoring an RSSI level, determine an averageRSSI level over time and transmitting each of the auto-addressingcommands in response to the average RSSI level being greater than thethreshold.
 31. The computer program product of claim 25, wherein each ofthe wireless connections is established based on a wireless signaltransmitted between the wireless mobile device and each respective endpoint device having an identifier unique to each respective end pointdevice.
 32. The computer program product of claim 25, further comprisingestablishing a public/private key encryption protocol in the wirelesssignal communication between the wireless mobile device and eachrespective end point device.
 33. The computer program product of claim32, further comprising establishing an encryption key unique to a set ofthe N end point devices located in a single vehicle.
 34. The computerprogram product of claim 25, further comprising selecting configurationinformation for the end point devices to assign personality traits forthe end devices.